/*
1.sizeof 运算符  计算数据类型/变量所占用空间大小  
2.运算符 
！>算术运算符>关系运算符>&&>||>赋值运算符
3.程序流程控制
    C语言三大基本组成结构：顺序结构 、选择结构、循环结构
    顺序结构：从上至下
    选择结构 ：if语句   switch语句  三目运算符(? :)
    循环结构：while语句  do-while语句  for语句  goto
4.if语句
    ①
    if(表达式)
    {
        语句；
    }
    ②
    if(表达式)
    {
    }
    else
    {
    }
    注意  if可以单独使用  而else不可以
    ③
    if(表达式1)
    {
        if(表达式2)
        {
        }
        else
        {
        }
    }
    else
    {

    }
    ④ 
    if(表达式1)
    {
    }
    else if(表达式2)
    {
    }
    else if(表达式3)
    {
    }
    else
    {
    }

*/
//字母转换  输入一个字母 如果是大写就转换为小写  如果是小写就转换为大写
#include <stdio.h>
int main(int argc, char const *argv[])
{
    char ch;
    printf("请输入一个英文字母");
    ch=getchar();
    //判断
    if (ch>='A'&&ch<='Z')//大写字母
    {
        ch+=32;//等价于  ch=ch+32;
    }
    esle if (/* condition */)
    {
        /* code */
    }
    printf("结果为%c\n",ch);
    
    
    return 0;
}

#if 0

//数据类型强转   （强转类型）（数据）
int main(int argc, char const *argv[])
{
    float a=10/3;
    float b=10/(float)(3);//将3 强制转换为 浮点类型
    float c=(float)(10/3);//将 （10/3）的结果强制转换为浮点类型
    printf("a=%f,b=%f,c=%f\n",a,b,c);

    return 0;
}


//算术运算符  %运算：求余数   ,  逻辑运算符   
//输入一个年份 判断该年是否为闰年（年份能被4整除但不能被100整除   或者 年份能被400整除）
int main(void)
{
    int year;
    printf("请输入一个年份");
    scanf("%d",&year);
    if (year%4==0&&year%100!=0||year%400==0)//算术运算符优先级 高于 &&  高于 ||
    {
        printf("%d年是闰年\n",year);
    }
    else
    {
        printf("%d年是平年\n",year);
    }
    
    // int a=10,b=3,c;
    // c=a%b;//求  10除以3的余数
    // printf("c=%d\n",c);
    return 0;
}

#include <stdio.h>
//通过三目运算符  求三个数中的最大值
void main(void)
{
    int a=12,b=454,c=100;
    int max;//保存最大值
    max=a>b?(a>c?a:c):(b>c?b:c);

    printf("max=%d\n",max);

}


//输入数字1-7 输出中文 星期一~日例如：输入数字1  输出：星期一
#include <stdio.h>
int main(int argc, char const *argv[])
{
    int day;
    printf("请输入数字星期");
    scanf("%d",&day);
    if (day==1)
      printf("星期一\n");
        //printf("MON\n");
    else if(day==2)
    {
        printf("星期二\n");
    }
     else if(day==3)
    {
        printf("星期三\n");
    }
     else if(day==4)
    {
        printf("星期四\n");
    }
     else if(day==5)
    {
        printf("星期五\n");
    }
     else if(day==6)
    {
        printf("星期六\n");
    }
     else if(day==7)
    {
        printf("星期日\n");
    }
    else
    {
        printf("数据有误\n");
    }

    
    return 0;
}

#include <stdio.h>
//从键盘输入三个数，求其中的最大值 
int main(void)
{
    double a,b,c;
   printf("请输入三个数：用逗号隔开");
    scanf("%lf,%lf,%lf",&a,&b,&c);//输入函数 
    //先拿 a与b比较  如果a>b  再拿a与c比     ，否则 拿b与c比
    if (a>b)
    {
       if(a>c)
       {
        printf("最大值为：%lf\n",a);
       }
       else
       {
         printf("最大值为：%lf\n",c);

       }
    }
    else
    {
        if(b>c)
        {
             printf("最大值为：%lf\n",b);
        }
        else
        {
             printf("最大值为：%lf\n",c);
        }
    }
    
    return 0;
}  
//从键盘输入两个数，求其中的最大值   
int MAX2(void)
{
    //定义数据
    double a,b;
    printf("请输入两个数：用逗号隔开");
    scanf("%lf,%lf",&a,&b);//输入函数 
    if(a>b)
    {
        printf("最大值为：%lf\n",a);
    }
    else 
    {
         printf("最大值为：%lf\n",b);
    }
    return 0;
}



//sizeof运算符练习
int main(int argc, char const *argv[])
{
    int a=100;
    printf("变量a所占用的空间为%lu个字节\n",sizeof(a));
    printf("int类型所占用空间为%lu个字节\n",sizeof(int));
    printf("short类型所占用空间为%lu个字节\n",sizeof(short));
    printf("long类型所占用空间为%lu个字节\n",sizeof(long));
    printf("float类型所占用空间为%lu个字节\n",sizeof(float));
    printf("double类型所占用空间为%lu个字节\n",sizeof(double));
    printf("char类型所占用空间为%lu个字节\n",sizeof(char));
    printf("long long类型所占用空间为%lu个字节\n",sizeof(long long));
    return 0;
}
#endif
